查看原文
其他

一键导出全部邮件到本地,彻底解放双手

李运辰 Python研究者 2022-09-11

大家好,我是辰哥


大家可能会遇到这样一种情况:有没有什么办法可以将邮箱里面的邮件全部下载到本地(包括图文、压缩附件、文档附件等)。比如HR、收集意见的工作人员甚至是一些负责收邮件的老师等人都会遇到这种情况。


今天辰哥就教大家如何利用Python去下载邮箱中全部邮件,本文核心库主要是zmail。


01


准备工作


1.安装库

pip install zmail


通过上面的命令即可安装zmail


导入库


import zmailimport osimport datetimeimport time#引入正则表达式,替换掉非法字符import re


2.开启POP3/SMTP服务


在程序中登录QQ邮箱不是使用qq邮箱密码,是使用POP3/SMTP服务口令,所以我们这里先获取口令


第一步:登录qq邮箱点击设置,再点账户



第二步:开启POP3/SMTP,点击开启后会生成一段字符串(token),这里辰哥已经开启了



02


下载全部邮件


1.登录账户

下载的全部邮件都会保存在文件夹chenge


2.读取全部邮件

目标下载全部的邮件。所以这里获取到邮件数,并通过循环去遍历


3.创建保存文件夹

这里提取邮件日期和主题,在chenge文件夹下为该邮件创建文件夹(到时候保存正文内容和附件


4.保存邮件正文

判断本地是否存在该邮件命名的文件夹,不存在则创建。


提取正文内容保存到正文文本.txt,txt中的格式如下:



5.保存附件

一行代码就可以将附件,包括正文中的插图直接下载保存到指定文件夹中




03


演示程序


1.邮件示例


这里准备了两份邮件(一份图+文,一份附件+文)



一份图+文



这份邮件有正文正文插图图片附件


一份附件+文



这份邮件有正文正文插图压缩包附件


2.执行程序



结果如下:








04


小结


本文讲解了如何通过Python教大家如何利用Python去下载邮箱中全部邮件不明白的地方可以在下方留言或者后台加辰哥微信,一起交流。


为了大家方便学习,辰哥把本文的完整源码上传,需要的后台回复:邮件下载



最后说一声:原创不易,求给个赞、在看、评论



今日推荐
太神奇了!GIF的合成与提取这么好玩 我做到了!《斗罗大陆》人物关系可视化 太方便了!利用Python对批量Pdf转Word


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存